/*
 RLRecyclableItem.m
 Date Created: February 19, 2010
 
 Author: Karol Krizka <kkrizka@gmail.com>
 
 Copyright (C) 2010 Green-Power
 
 URL: http://code.google.com/p/green-power
 
 This program is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation; either version 3 of the License, or
 (at your option) any later version.
 
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.
 
 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
 
 $Id$
 */

#import "RLRecyclableItem.h"

#import "RLRecyclingRun.h"

@implementation RLRecyclableItem 

@dynamic quantity;
@dynamic type;
@dynamic owner;

- (NSUInteger)quantity {
  [self willAccessValueForKey:@"quantity"];
  NSNumber *quantityObj=[self primitiveValueForKey:@"quantity"];
  [self didAccessValueForKey:@"quantity"];
  return quantityObj.intValue;
}

- (void)setQuantity:(NSUInteger)newQuantity {
  [self willChangeValueForKey:@"quantity"];
  [self setPrimitiveValue:[NSNumber numberWithInt:newQuantity] forKey:@"quantity"];
  [self didChangeValueForKey:@"quantity"];
}

- (RLRecyclableType *)typeDescription {
  return [RLRecyclableType typeForUniqueName:self.type];
}

- (NSUInteger)totalValue {
  RLRecyclableType *typeInfo=self.typeDescription;
  return self.quantity*typeInfo.depositValue;
}

@end
